<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../../../../style.css" type="text/css" media="screen">
<link rel="stylesheet" href="../../../../../print.css" type="text/css" media="print">
<meta content="BinaryTreeGenome,com.suckatmath.machinelearning.genetic.impl.BinaryTreeGenome,gene,left,parent,randomNodeLimit,right,clone,crossover,mutate,newRandom,setLeft,setParent,setRandomNodeLimit,setRight,toString" name="keywords">
<title>com.suckatmath.machinelearning.genetic.impl.BinaryTreeGenome</title>
</head>
<body>
<script type="text/javascript" language="javascript" src="../../../../../asdoc.js"></script><script type="text/javascript" language="javascript" src="../../../../../cookies.js"></script><script type="text/javascript" language="javascript">
<!--
				asdocTitle = 'BinaryTreeGenome - API Documentation';
				var baseRef = '../../../../../';
				window.onload = configPage;
			--></script>
<table style="display:none" id="titleTable" cellspacing="0" cellpadding="0" class="titleTable">
<tr>
<td align="left" class="titleTableTitle">Geneas</td><td align="right" class="titleTableTopNav"><a onclick="loadClassListFrame('../../../../../all-classes.html')" href="../../../../../package-summary.html">All&nbsp;Packages</a>&nbsp;|&nbsp;<a onclick="loadClassListFrame('../../../../../all-classes.html')" href="../../../../../class-summary.html">All&nbsp;Classes</a>&nbsp;|&nbsp;<a onclick="loadClassListFrame('../../../../../index-list.html')" href="../../../../../all-index-A.html">Index</a>&nbsp;|&nbsp;<a href="../../../../../index.html?com/suckatmath/machinelearning/genetic/impl/BinaryTreeGenome.html&amp;com/suckatmath/machinelearning/genetic/impl/class-list.html" id="framesLink1">Frames</a><a onclick="parent.location=document.location" href="" style="display:none" id="noFramesLink1">No&nbsp;Frames</a></td><td rowspan="3" align="right" class="titleTableLogo"><img alt="Adobe Logo" title="Adobe Logo" class="logoImage" src="../../../../../images/logo.jpg"></td>
</tr>
<tr class="titleTableRow2">
<td align="left" id="subTitle" class="titleTableSubTitle">Class&nbsp;BinaryTreeGenome</td><td align="right" id="subNav" class="titleTableSubNav"><a href="#propertySummary">Properties</a>&nbsp;| <a href="#methodSummary">Methods</a></td>
</tr>
<tr class="titleTableRow3">
<td colspan="2">&nbsp;</td>
</tr>
</table>
<script type="text/javascript" language="javascript">
<!--
if (!isEclipse() || window.name != ECLIPSE_FRAME_NAME) {titleBar_setSubTitle("Class BinaryTreeGenome"); titleBar_setSubNav(false,true,false,false,false,false,true,false,false,false,false,false,false,false);}
--></script>
<div class="MainContent">
<table cellspacing="0" cellpadding="0" class="classHeaderTable">
<tr>
<td class="classHeaderTableLabel">Package</td><td><a onclick="javascript:loadClassListFrame('class-list.html')" href="package-detail.html">com.suckatmath.machinelearning.genetic.impl</a></td>
</tr>
<tr>
<td class="classHeaderTableLabel">Class</td><td class="classSignature">public class BinaryTreeGenome</td>
</tr>
<tr>
<td class="classHeaderTableLabel">Implements</td><td><a href="../core/Genome.html">Genome</a></td>
</tr>
</table>
<p></p>
 Binary tree backed Genome. 
 This uses non-isomorphic trees, and may grow arbitrarily.
 <p></p>
<br>
<hr>
</div>
<a name="propertySummary"></a>
<div class="summarySection">
<div class="summaryTableTitle">Public Properties</div>
<table id="summaryTableProperty" class="summaryTable " cellpadding="3" cellspacing="0">
<tr>
<th>&nbsp;</th><th colspan="2">Property</th><th class="summaryTableOwnerCol">Defined&nbsp;by</th>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#gene">gene</a> : <a href="../core/Gene.html">Gene</a>
<div class="summaryTableDescription">
   content Gene for this node
   </div>
</td><td class="summaryTableOwnerCol">BinaryTreeGenome</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#left">left</a> : <a href="../impl/BinaryTreeGenome.html">BinaryTreeGenome</a>
<div class="summaryTableDescription">
   BinaryTreeGenome left child of this Genome
   </div>
</td><td class="summaryTableOwnerCol">BinaryTreeGenome</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#parent">parent</a> : <a href="../impl/BinaryTreeGenome.html">BinaryTreeGenome</a>
<div class="summaryTableDescription">
   reference to parent BinaryTreeGenome
   </div>
</td><td class="summaryTableOwnerCol">BinaryTreeGenome</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#randomNodeLimit">randomNodeLimit</a> : int<div class="summaryTableDescription">
   maximum number of random nodes to generate in newRandom - defaults to 1
   </div>
</td><td class="summaryTableOwnerCol">BinaryTreeGenome</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#right">right</a> : <a href="../impl/BinaryTreeGenome.html">BinaryTreeGenome</a>
<div class="summaryTableDescription">
   BinaryTreeGenome right child of this Genome
   </div>
</td><td class="summaryTableOwnerCol">BinaryTreeGenome</td>
</tr>
</table>
</div>
<a name="methodSummary"></a>
<div class="summarySection">
<div class="summaryTableTitle">Public Methods</div>
<table id="summaryTableMethod" class="summaryTable " cellpadding="3" cellspacing="0">
<tr>
<th>&nbsp;</th><th colspan="2">Method</th><th class="summaryTableOwnerCol">Defined&nbsp;by</th>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#BinaryTreeGenome()">BinaryTreeGenome</a>()</div>
<div class="summaryTableDescription">
   constructs a new empty BinaryTreeGenome
   </div>
</td><td class="summaryTableOwnerCol">BinaryTreeGenome</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#clone()">clone</a>():<a href="../core/Genome.html">Genome</a>
</div>
<div class="summaryTableDescription">
   return a copy of this BinaryTreeGenome
   </div>
</td><td class="summaryTableOwnerCol">BinaryTreeGenome</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#crossover()">crossover</a>(others:Array, numpoints:int):<a href="../core/Genome.html">Genome</a>
</div>
<div class="summaryTableDescription">
   generate a new genome through "sexual" reproduction combining subtrees of a collection of BinaryTreeGenomes
   </div>
</td><td class="summaryTableOwnerCol">BinaryTreeGenome</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#mutate()">mutate</a>(probability:Number):<a href="../core/Genome.html">Genome</a>
</div>
<div class="summaryTableDescription">
   create a copy of this Genome with some probability of mutation in a single Gene
   </div>
</td><td class="summaryTableOwnerCol">BinaryTreeGenome</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#newRandom()">newRandom</a>():<a href="../core/Genome.html">Genome</a>
</div>
<div class="summaryTableDescription">
   generate a new random BinaryTreeGenome
   </div>
</td><td class="summaryTableOwnerCol">BinaryTreeGenome</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#setLeft()">setLeft</a>(b:<a href="BinaryTreeGenome.html">BinaryTreeGenome</a>):void</div>
<div class="summaryTableDescription">
   sets left child genome
   </div>
</td><td class="summaryTableOwnerCol">BinaryTreeGenome</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#setParent()">setParent</a>(b:<a href="BinaryTreeGenome.html">BinaryTreeGenome</a>):void</div>
<div class="summaryTableDescription">
   set back reference to parent genome
   </div>
</td><td class="summaryTableOwnerCol">BinaryTreeGenome</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#setRandomNodeLimit()">setRandomNodeLimit</a>(i:int):void</div>
<div class="summaryTableDescription">
   set maximum number of nodes to generate in newRandom
   </div>
</td><td class="summaryTableOwnerCol">BinaryTreeGenome</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#setRight()">setRight</a>(b:<a href="BinaryTreeGenome.html">BinaryTreeGenome</a>):void</div>
<div class="summaryTableDescription">
   sets right child genome
   </div>
</td><td class="summaryTableOwnerCol">BinaryTreeGenome</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#toString()">toString</a>():String</div>
<div class="summaryTableDescription">
   return a String representation of this BinaryTreeGenome
   reports in indented multi-line depth first order, where left is before right
   </div>
</td><td class="summaryTableOwnerCol">BinaryTreeGenome</td>
</tr>
</table>
</div>
<script type="text/javascript" language="javascript">
<!--
showHideInherited();
--></script>
<div class="MainContent">
<a name="propertyDetail"></a>
<div class="detailSectionHeader">Property detail</div>
<a name="gene"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">gene</td><td class="detailHeaderType">property</td>
</tr>
</table>
<div class="detailBody">
<code>public var gene:<a href="../core/Gene.html">Gene</a></code><p>
   content Gene for this node
   </p></div>
<a name="left"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">left</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public var left:<a href="../impl/BinaryTreeGenome.html">BinaryTreeGenome</a></code><p>
   BinaryTreeGenome left child of this Genome
   </p></div>
<a name="parent"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">parent</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public var parent:<a href="../impl/BinaryTreeGenome.html">BinaryTreeGenome</a></code><p>
   reference to parent BinaryTreeGenome
   </p></div>
<a name="randomNodeLimit"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">randomNodeLimit</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public var randomNodeLimit:int</code><p>
   maximum number of random nodes to generate in newRandom - defaults to 1
   </p></div>
<a name="right"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">right</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public var right:<a href="../impl/BinaryTreeGenome.html">BinaryTreeGenome</a></code><p>
   BinaryTreeGenome right child of this Genome
   </p></div>
<a name="constructorDetail"></a>
<div class="detailSectionHeader">Constructor detail</div>
<a name="BinaryTreeGenome()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">BinaryTreeGenome</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">constructor</td>
</tr>
</table>
<div class="detailBody">
<code>public function BinaryTreeGenome()</code><p>
   constructs a new empty BinaryTreeGenome
   </p></div>
<a name="methodDetail"></a>
<div class="detailSectionHeader">Method detail</div>
<a name="clone()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">clone</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td>
</tr>
</table>
<div class="detailBody">
<code>public function clone():<a href="../core/Genome.html">Genome</a></code><p>
   return a copy of this BinaryTreeGenome
   </p><p></p>
<span class="label">Returns</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20"></td><td><code><a href="../core/Genome.html">Genome</a></code> &mdash; 
                        BinaryTreeGenome as Genome
   
                        
                     </td>
</tr>
</table>
</div>
<a name="crossover()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">crossover</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public function crossover(others:Array, numpoints:int):<a href="../core/Genome.html">Genome</a></code><p>
   generate a new genome through "sexual" reproduction combining subtrees of a collection of BinaryTreeGenomes
   </p><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">others</span>:Array</code> &mdash; Array of BinaryTreeGenome
   </td>
</tr>
<tr>
<td class="paramSpacer">&nbsp;</td>
</tr>
<tr>
<td width="20px"></td><td><code><span class="label">numpoints</span>:int</code> &mdash; int number of splice points for subtree replacement
   </td>
</tr>
</table>
<p></p>
<span class="label">Returns</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20"></td><td><code><a href="../core/Genome.html">Genome</a></code> &mdash; 
                         BinaryTreeGenome as Genome
   
                        
                     </td>
</tr>
</table>
</div>
<a name="mutate()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">mutate</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public function mutate(probability:Number):<a href="../core/Genome.html">Genome</a></code><p>
   create a copy of this Genome with some probability of mutation in a single Gene
   </p><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">probability</span>:Number</code></td>
</tr>
</table>
<p></p>
<span class="label">Returns</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20"></td><td><code><a href="../core/Genome.html">Genome</a></code> &mdash; 
                        Genome
   
                        
                     </td>
</tr>
</table>
</div>
<a name="newRandom()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">newRandom</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public function newRandom():<a href="../core/Genome.html">Genome</a></code><p>
   generate a new random BinaryTreeGenome
   </p><p></p>
<span class="label">Returns</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20"></td><td><code><a href="../core/Genome.html">Genome</a></code> &mdash; 
                        BinaryTreeGenome as Genome
   
                        
                     </td>
</tr>
</table>
</div>
<a name="setLeft()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">setLeft</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public function setLeft(b:<a href="BinaryTreeGenome.html">BinaryTreeGenome</a>):void</code><p>
   sets left child genome
   </p><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">b</span>:<a href="BinaryTreeGenome.html">BinaryTreeGenome</a></code> &mdash; BinaryTreeGenome
   </td>
</tr>
</table>
</div>
<a name="setParent()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">setParent</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public function setParent(b:<a href="BinaryTreeGenome.html">BinaryTreeGenome</a>):void</code><p>
   set back reference to parent genome
   </p><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">b</span>:<a href="BinaryTreeGenome.html">BinaryTreeGenome</a></code> &mdash; BinaryTreeGenome
   </td>
</tr>
</table>
</div>
<a name="setRandomNodeLimit()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">setRandomNodeLimit</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public function setRandomNodeLimit(i:int):void</code><p>
   set maximum number of nodes to generate in newRandom
   </p><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">i</span>:int</code> &mdash; int
   </td>
</tr>
</table>
</div>
<a name="setRight()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">setRight</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public function setRight(b:<a href="BinaryTreeGenome.html">BinaryTreeGenome</a>):void</code><p>
   sets right child genome
   </p><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">b</span>:<a href="BinaryTreeGenome.html">BinaryTreeGenome</a></code> &mdash; BinaryTreeGenome
   </td>
</tr>
</table>
</div>
<a name="toString()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">toString</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public function toString():String</code><p>
   return a String representation of this BinaryTreeGenome
   reports in indented multi-line depth first order, where left is before right
   </p><p></p>
<span class="label">Returns</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20"></td><td><code>String</code> &mdash; String
   </td>
</tr>
</table>
</div>
<br>
<br>
<hr>
<br>
<p></p>
<center class="copyright"> 
</center>
</div>
</body>
</html>
<!-- -->
